package com.xyht.sca_s.student_manage_system.modules.stampRegistration.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.xyht.sca_s.student_manage_system.common.commonReturn.ResponseResult;
import com.xyht.sca_s.student_manage_system.modules.stampRegistration.entity.SmsStampRegistration;
import com.xyht.sca_s.student_manage_system.modules.stampRegistration.entity.dto.SmsStampRegistrationAllowDto;
import com.xyht.sca_s.student_manage_system.modules.stampRegistration.entity.dto.SmsStampRegistrationCancelDto;
import com.xyht.sca_s.student_manage_system.modules.stampRegistration.entity.dto.SmsStampRegistrationDto;
import com.xyht.sca_s.student_manage_system.modules.stampRegistration.entity.dto.SmsStampRegistrationHistoryReq;

import javax.servlet.http.HttpServletResponse;
import java.util.concurrent.Future;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author XYHT
 * @since 2023-05-25
 */
public interface SmsStampRegistrationService extends IService<SmsStampRegistration> {

    ResponseResult addStampRegistration(String userId, SmsStampRegistrationDto stampRegistrationDto);
    ResponseResult cancelStampRegistration(String userId, SmsStampRegistrationCancelDto cancelDto);
    ResponseResult allowStampRegistration(String userId, SmsStampRegistrationAllowDto allowDto);
    ResponseResult getStampOriginSettingProcess();
    ResponseResult getStampRegistrationDetail(String userId,String examineId);
    ResponseResult getStampRegistrationList(String userId,Integer examine_type,Integer pageNum,Integer pageSize,String search_str);
    Future<ResponseResult> tableDownload(String apply_id, HttpServletResponse response);
    ResponseResult getAllStampRegistrationList(Integer allowStatus,String applyName,Integer pageNum,Integer pageSize);
    Future<ResponseResult> exportExamineHistoryList(SmsStampRegistrationHistoryReq req, HttpServletResponse response);

}
